FEXP Solver  1.0.0.0
ICFEXPNetServerClientNode< TSocket > Class Template Reference

Base interface for server clients. More...

#include <FEXPNetworkInterface.h>

Inheritance diagram for ICFEXPNetServerClientNode< TSocket >:
Collaboration diagram for ICFEXPNetServerClientNode< TSocket >:

Public Member Functions

 ICFEXPNetServerClientNode (TSocket socket, std::string client_ip, size_t node_id, std::string server_ip, size_t port, std::function< t_ENetThrdMsg(size_t, size_t)> message_gttr, std::function< bool(size_t, size_t)> message_lchr, std::function< void(size_t, size_t, t_ENetThrdMsg)> message_sttr, std::function< Ptr< t_NetCalcData >(size_t)> clcdata_gttr, std::function< void(size_t)> state_update, std::function< bool(size_t)> synchronizer, std::function< void(size_t, t_fexpcommon_ct)> dtmacro_sttr, std::function< void(size_t, Ptr< CFEXGeomTools::t_BoundBox >, size_t)> mdmacro_sttr)
 
- Public Member Functions inherited from ICFEXPNetNodeConnection
 ICFEXPNetNodeConnection (size_t node_id, std::string server_ip, size_t port)
 
virtual ~ICFEXPNetNodeConnection ()
 
virtual size_t GetId () const override
 
virtual void SetId (size_t id) override
 
std::string GetServerNodeIP ()
 
size_t GetCommPort ()
 
virtual void Run ()=0
 
virtual void Close ()=0
 
- Public Member Functions inherited from ICFEXPNetBase
virtual ~ICFEXPNetBase ()
 

Protected Attributes

TSocket _socket
 
std::string _client_ip
 
std::function< t_ENetThrdMsg(size_t, size_t)> _thread_message_gttr
 
std::function< bool(size_t, size_t)> _thread_message_lchr
 
std::function< void(size_t, size_t, t_ENetThrdMsg)> _thread_message_sttr
 
std::function< Ptr< t_NetCalcData >size_t)> _thread_clcdata_gttr
 
std::function< void(size_t)> _thread_state_update
 
std::function< bool(size_t)> _thread_synchronizer
 
std::function< void(size_t, t_fexpcommon_ct)> _thread_dtmacro_sttr
 
std::function< void(size_t, Ptr< CFEXGeomTools::t_BoundBox >, size_t)> _thread_mdmacro_sttr
 
- Protected Attributes inherited from ICFEXPNetNodeConnection
std::atomic_bool _connection_start
 

Additional Inherited Members

- Protected Member Functions inherited from ICFEXPNetNodeConnection
template<typename TInp , typename TFunc >
std::function< TFunc()> get_thread_functor (std::function< TFunc(TInp)> thread_fce, std::function< TInp()> input)
 

Detailed Description

template<typename TSocket>
class ICFEXPNetServerClientNode< TSocket >

Base interface for server clients.

Constructor & Destructor Documentation

◆ ICFEXPNetServerClientNode()

template<typename TSocket>
ICFEXPNetServerClientNode< TSocket >::ICFEXPNetServerClientNode ( TSocket  socket,
std::string  client_ip,
size_t  node_id,
std::string  server_ip,
size_t  port,
std::function< t_ENetThrdMsg(size_t, size_t)>  message_gttr,
std::function< bool(size_t, size_t)>  message_lchr,
std::function< void(size_t, size_t, t_ENetThrdMsg)>  message_sttr,
std::function< Ptr< t_NetCalcData >(size_t)>  clcdata_gttr,
std::function< void(size_t)>  state_update,
std::function< bool(size_t)>  synchronizer,
std::function< void(size_t, t_fexpcommon_ct)>  dtmacro_sttr,
std::function< void(size_t, Ptr< CFEXGeomTools::t_BoundBox >, size_t)>  mdmacro_sttr 
)
inline

Member Data Documentation

◆ _client_ip

template<typename TSocket>
std::string ICFEXPNetServerClientNode< TSocket >::_client_ip
protected

◆ _socket

template<typename TSocket>
TSocket ICFEXPNetServerClientNode< TSocket >::_socket
protected

◆ _thread_clcdata_gttr

template<typename TSocket>
std::function<Ptr<t_NetCalcData>size_t )> ICFEXPNetServerClientNode< TSocket >::_thread_clcdata_gttr
protected

◆ _thread_dtmacro_sttr

template<typename TSocket>
std::function<void (size_t, t_fexpcommon_ct )> ICFEXPNetServerClientNode< TSocket >::_thread_dtmacro_sttr
protected

◆ _thread_mdmacro_sttr

template<typename TSocket>
std::function<void (size_t, Ptr<CFEXGeomTools::t_BoundBox>, size_t )> ICFEXPNetServerClientNode< TSocket >::_thread_mdmacro_sttr
protected

◆ _thread_message_gttr

template<typename TSocket>
std::function<t_ENetThrdMsg (size_t, size_t )> ICFEXPNetServerClientNode< TSocket >::_thread_message_gttr
protected

◆ _thread_message_lchr

template<typename TSocket>
std::function<bool (size_t, size_t )> ICFEXPNetServerClientNode< TSocket >::_thread_message_lchr
protected

◆ _thread_message_sttr

template<typename TSocket>
std::function<void (size_t, size_t , t_ENetThrdMsg)> ICFEXPNetServerClientNode< TSocket >::_thread_message_sttr
protected

◆ _thread_state_update

template<typename TSocket>
std::function<void (size_t )> ICFEXPNetServerClientNode< TSocket >::_thread_state_update
protected

◆ _thread_synchronizer

template<typename TSocket>
std::function<bool (size_t )> ICFEXPNetServerClientNode< TSocket >::_thread_synchronizer
protected

The documentation for this class was generated from the following file: